.Net: Add RetainArgumentTypes support to FunctionCallContentBuilder#13142
Closed
ioshm wants to merge 5 commits into
Closed
.Net: Add RetainArgumentTypes support to FunctionCallContentBuilder#13142ioshm wants to merge 5 commits into
RetainArgumentTypes support to FunctionCallContentBuilder#13142ioshm wants to merge 5 commits into
Conversation
Author
|
@microsoft-github-policy-service agree |
Before this patch, the `FunctionCallContentBuilder` did not support retaining the argument types. We need this to support retained argument types when not using auto invoke function choices.
76d98f9 to
9bf7fae
Compare
SergeyMenshykh
approved these changes
Sep 25, 2025
markwallace-microsoft
approved these changes
Sep 25, 2025
Author
|
The Can reproduce by spamming the following until it races: dotnet test dotnet\src\Connectors\Connectors.AzureOpenAI.UnitTests --filter "(FullyQualifiedName=SemanticKernel.Connectors.AzureOpenAI.UnitTests.KernelCore.KernelTests.FunctionUsageMetricsAreCapturedByTelemetryAsExpected) | (FullyQualifiedName=SemanticKernel.Connectors.AzureOpenAI.UnitTests.Services.AzureOpenAIChatCompletionServiceTests.GetChatMessageContentsUsesPromptAndSettingsCorrectlyAsync)" --no-buildCan also reproduce from VS by running these two tests in parallel until failure. |
auto-merge was automatically disabled
September 25, 2025 15:41
Head branch was pushed to by a user without write access
Author
|
Find a fix in e08e4d1. This bit of code can be triggered concurrently (from two parallel tests). The Fix the problem by using a thread-safe collection, |
Contributor
|
Closing it for now. @ioshm feel free to reopen it if it's still relevant. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation and Context
Before this patch, the
FunctionCallContentBuilderdid not support retaining the argument types. We need this to support retained argument types when not using auto invoke function choices, i.e: a custom agent loop.Figured this was small enough to not warrant an issue.
Description
Modified the experimental constructor to include a
bool retainArgumentTypesparameter. I decided to update the existing experimental constructor to avoid polluting the class with extra constructors. Not sure if this is considered breaking.Contribution Checklist